import { IsPhoneNumber, IsString, Length } from 'class-validator';

/**
 * 手机号验证码登录请求DTO
 * 用于验证用户手机号和验证码的登录请求数据
 */
export class LoginWithCodeDto {
  /**
   * 用户手机号
   * @type {string}
   * @required 是
   * @pattern 中国手机号格式，以1开头的11位数字
   * @example '13800138000'
   */
  @IsPhoneNumber('CN', { message: '请输入有效的中国手机号' })
  phone: string;

  /**
   * 验证码
   * @type {string}
   * @required 是
   * @length 6 个字符
   * @example '123456'
   */
  @IsString({ message: '验证码必须为字符串' })
  @Length(6, 6, { message: '验证码长度必须为6个字符' })
  code: string;
}